Modification Title: Portal System Addon: Stats Bar v1.0

Modification Author: maluta

Last Updated: 04/18/09

Modification Description:
This modification will provide 3 portal stats displays for portal with added attributes.
This modification will provide classic style, modern style and default style looks (chosen in admin settings).
This modification will provide an on/off control for the portal stats bar (in portal settings).
This modification will provide a most users online ever feature.
This modification will provide a top poster feature.
This modification will provide a member of the day feature.
This modification will provide a today's birthday feature.

Supported Version: XMB 1.9.8 SP3

Updated for 1.9.8 by: WormHole @ XMB Garage

Installation Note: Before adding this modification to your forum you should back up all files related to this modification.

License Note: This modification is released under the GPL License. A copy is provided with this software package.

Author Note:
In order to use this modification, you need to have the Portal and Index Stats Bar Installed

=======================================================================================================================
=======
Step 1:
=======
==============================
Go To Admin Panel -> Insert Raw SQL
==============================
============================
Add Code and Click Submit Changes
============================

ALTER TABLE `$table_settings` ADD `portalbarstatus` char(3) NOT NULL default 'on';

=======================================================================================================================
=======
Step 2:
=======
===================
Edit File: cp_portal.php
===================
==========
Find Code:
==========

        $portalviewon = $portalviewoff = '';
        settingHTML('portalview', $portalviewon, $portalviewoff);

===============
Add Code Below:
===============

        // Portal System Addon: Stats Bar Mod Begin
        $portalbarstatus_on = $portalbarstatus_off = '';
        settingHTML('portalbarstatus', $portalbarstatus_on, $portalbarstatus_off);
        // Portal System Addon: Stats Bar Mod End

==========
Find Code:
==========

        $portalviewnew = formOnOff('portalviewnew');

===============
Add Code Below:
===============

        // Portal System Addon: Stats Bar Mod Begin
        $portalbarstatusnew = formOnOff('portalbarstatusnew');
        // Portal System Addon: Stats Bar Mod End

==========
Find Code:
==========

        mysql_query("UPDATE ".X_PREFIX."settings SET

================
Replace Code With:
================

        mysql_query("UPDATE ".X_PREFIX."settings SET
            portalbarstatus='$portalbarstatusnew',

=======================================================================================================================
=======
Step 3:
=======
================
Edit File: portal.php
================
==========
Find Code:
==========

loadtemplates(

============
Replace With:
============

loadtemplates(
'portal_statsbar_classic',
'portal_statsbar_modern',
'portal_statsbar_default',
'index_statsbar_classic',

==========
Find Code:
==========

        if ($online['invisible'] != 0) {
            $pre .= '<strike>';
            $suff = '</strike>'.$suff;
            if (!X_ADMIN && $online['username'] != $xmbuser) {
                $num++;
                continue;
            }
        }

===============
Add Code Above:
===============

        // Portal System Addon: Stats Bar Mod Begin
        $query = $db->query("SELECT username FROM ".X_PREFIX."members ORDER BY regdate DESC LIMIT 1");
        $lastmember = $db->fetch_array($query);
        $db->free_result($query);

        $query = $db->query("SELECT count(uid) FROM ".X_PREFIX."members");
        $members = $db->result($query, 0);
        $db->free_result($query);

        $query = $db->query("SELECT COUNT(tid) FROM ".X_PREFIX."threads");
        $threads = $db->result($query, 0);
        $db->free_result($query);

        $query = $db->query("SELECT COUNT(pid) FROM ".X_PREFIX."posts");
        $posts = $db->result($query, 0);
        $db->free_result($query);

        if ($SETTINGS['portalbarstatus'] == 'on') {
            require_once('./include/statsbar.inc.php');
        }
        // Portal System Addon: Stats Bar Mod End

=======================================================================================================================
=======
Step 4:
=======

===============
Edit File: index.php
===============

==========
Find Code:
==========

loadtemplates(

============
Replace With:
============

loadtemplates(
'portal_statsbar_classic',

=======================================================================================================================
=======
Step 5:
=======
=========================
Edit File: include/statsbar.inc.php
=========================
==========
Find Code:
==========

$statsbar = '';
if ($SETTINGS['statsbarview'] == 'classic') {
    eval('$statsbar = "'.template('index_statsbar_classic').'";');
} elseif ($SETTINGS['statsbarview'] == 'modern') {
    eval('$statsbar = "'.template('index_statsbar_modern').'";');
} elseif ($SETTINGS['statsbarview'] == 'default') {
    eval('$statsbar = "'.template('index_statsbar_default').'";');
}

============
Replace with:
============

$statsbar = '';
$portbar = '';
if ($SETTINGS['statsbarview'] == 'classic') {
    eval('$statsbar = "'.template('index_statsbar_classic').'";');
    eval('$portbar = "'.template('portal_statsbar_classic').'";');
} elseif ($SETTINGS['statsbarview'] == 'modern') {
    eval('$statsbar = "'.template('index_statsbar_modern').'";');
    eval('$portbar = "'.template('portal_statsbar_modern').'";');
} elseif ($SETTINGS['statsbarview'] == 'default') {
    eval('$statsbar = "'.template('index_statsbar_default').'";');
    eval('$portbar = "'.template('portal_statsbar_default').'";');
}

=======================================================================================================================
=======
Step 6:
=======
=========================
Edit File: /lang/English.portal.php
=========================
============================
Add Code To End Of File Above ?>
============================

// Portal System Addon: Stats Bar Mod Begin
$lang['portalbarstatus'] = 'Portal Stats Bar Status:<br /><small>The Stats Bar status must be set to "ON" to be shown on portal.</small>';
// Portal System Addon: Stats Bar Mod End

=======================================================================================================================
=======
Step 7:
=======
==========================
Go To Admin Panel -> Templates
==========================
==================================
Create New Template: portal_statsbar_classic
==================================
===========================
Add Code & Click Submit Changes
===========================

<br />
<table border="0" cellpadding="0" cellspacing="0" width="$THEME[tablewidth]" align="center">
<tr>
<td bgcolor="$THEME[bordercolor]">
<table border="0" cellspacing="$THEME[borderwidth]" cellpadding="$THEME[tablespace]" width="100%">
<tr class="category">
<td colspan="8"><a href="stats.php"><font color="$THEME[cattext]"><strong>$lang[statsbarstatsclassic]</strong></font></a></td>
</tr>
<tr style="background-color: $THEME[altbg1]" class="ctrtablerow">
<td width="4%" rowspan="2"><img src="$THEME[imgdir]/statsbar.gif" alt="$lang[statsbarstatsclassic]" border="0" /></td>
<td nowrap="nowrap">$lang[statsbarthreadsclassic]</td>
<td nowrap="nowrap">$lang[statsbarpostsclassic]</td>
<td nowrap="nowrap">$lang[statsbarmembersclassic]</td>
<td nowrap="nowrap">$lang[statsbarmostusersclassic]</td>
<td nowrap="nowrap">$lang[statsbarnewmemsclassic]</td>
<td nowrap="nowrap">$lang[statsbartopposterclassic]</td>
<td nowrap="nowrap">$lang[statsbarmemdayclassic]</td>
</tr>
<tr style="background-color: $THEME[altbg2]" class="ctrtablerow">
<td>$threads</td>
<td>$posts</td>
<td>$members</td>
<td>$mosttext</strong></td>
<td>$statsbarmemhtml</td>
<td>$topposter</td>
<td>$membesthtml2</td>
</tr>
<tr class="tablerow">
<td bgcolor="$THEME[altbg2]" colspan="8">$lang[statsbarhappybdclassic]&nbsp;$happybday</td>
</tr>
<tr class="category">
<td colspan="8"><font color="$THEME[cattext]"><strong>$lang[statsbariconlegend]</strong></font></td>
</tr>
<tr style="background-color: $THEME[altbg2]" class="ctrtablerow">
<td style="width: 50%" colspan="5"><img src="$THEME[imgdir]/red_folder.gif" align="absmiddle" alt="$lang[altredfolder]" border="0" /> = $lang[newposts]</td>
<td style="width: 50%" colspan="4"><img src="$THEME[imgdir]/folder.gif" align="absmiddle" alt="$lang[altnormalfolder]" border="0" /> = $lang[nonewposts]</td>
</tr>
</table>
</td>
</tr>
</table>

=======================================================================================================================
=======
Step 8:
=======
=========================
Go To Admin Panel -> Templates
=========================
==================================
Create New Template: portal_statsbar_default
==================================
===========================
Add Code & Click Submit Changes
===========================

<br />
<table cellspacing="0" cellpadding="0" border="0" width="$THEME[tablewidth]" align="center">
<tr>
<td bgcolor="$THEME[bordercolor]">
<table border="0" cellspacing="$THEME[borderwidth]" cellpadding="$THEME[tablespace]" width="100%">
<tr class="category">
<td><font color="$THEME[cattext]"><strong>$lang[textstats]:</strong></font></td>
<td><font color="$THEME[cattext]"><strong>$lang[key]</strong></font></td>
</tr>
<tr class="tablerow" bgcolor="$THEME[altbg2]">
<td width="50%" align="left" valign="top">$lang[indexstats]<br />$lang[stats4] $memhtml<br />$lang[statsbartext12]$mosttext$lang[statsbartext7]</td>
<td width="50%" align="left" valign="top"><img src="$THEME[imgdir]/red_folder.gif" alt="$lang[altredfolder]" border="0" /> = $lang[newposts]<br />
<img src="$THEME[imgdir]/folder.gif" alt="$lang[altnormalfolder]" border="0" /> = $lang[nonewposts]</td>
</tr>
</table>
</td>
</tr>
</table>

=======================================================================================================================
=======
Step 9:
=======
==========================
Go To Admin Panel -> Templates
==========================
==================================
Create New Template: portal_statsbar_modern
==================================
===========================
Add Code & Click Submit Changes
===========================

<br />
<table border="0" cellpadding="0" cellspacing="0" width="$THEME[tablewidth]" align="center">
<tr>
<td bgcolor="$THEME[bordercolor]">
<table border="0" cellspacing="0" cellpadding="0" width="100%" align="center">
<tr>
<td class="tablerow" colspan="2" width="100%">
<table cellspacing="1" cellpadding="$THEME[tablespace]" border="0" width="100%" align="center">
<tr class="category">
<td colspan="6"><a href="stats.php"><strong><font color="$cattext">$lang[statsbarstatsclassic]</font></strong></a></td>
</tr>
<tr>
<td bgcolor="$THEME[altbg1]" align="center" class="tablerow" width="4%"><img src="$THEME[imgdir]/statsbar.gif" alt="$lang[statsbarstatsclassic]" border="0" /></td>
<td bgcolor="$altbg2" colspan="5" class="mediumtxt">
$lang[statsbartext1]<strong>$members</strong>$lang[statsbartext2]
<br />
$lang[statsbartext1]<strong>$threads</strong>$lang[statsbartext3]
<br />
$lang[statsbartext4]<strong>$posts</strong>$lang[statsbartext5]
<br />
$lang[statsbartext6]$statsbarmemhtml.
<br />
$lang[statsbartext8]$happybday
<br />
$lang[statsbartext9]$topposter2$lang[statsbartext10]<strong>$topposts2</strong>$lang[statsbartext5]
<br />
$lang[statsbartext11]$membesthtml$lang[statsbartext10]<strong>$bm[authorpost]</strong>$lang[statsbartext5]
<br />
$lang[statsbartext12]$mosttext$lang[statsbartext7]
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
<br />
<table border="0" cellpadding="0" cellspacing="0" width="$THEME[tablewidth]" align="center">
<tr>
<td bgcolor="$THEME[bordercolor]">
<table border="0" cellspacing="0" cellpadding="0" width="100%" align="center">
<tr>
<td class="tablerow" colspan="2" width="100%">
<table cellspacing="1" cellpadding="$THEME[tablespace]" border="0" width="100%" align="center">
<tr class="category">
<td colspan="2"><strong><font color="$THEME[cattext]">$lang[statsbariconlegend]</font></strong></td>
</tr>
<tr bgcolor="$THEME[altbg1]" class="ctrtablerow">
<td width="50%"><img src="$THEME[imgdir]/red_folder.gif" align="absmiddle" alt="$lang[altredfolder]" border="0" /> = $lang[newposts]</td>
<td width="50%"><img src="$THEME[imgdir]/folder.gif" align="absmiddle" alt="$lang[altnormalfolder]" border="0" /> = $lang[nonewposts]</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>

=======================================================================================================================
========
Step 10:
========
==========================
Go To Admin Panel -> Templates
==========================
=====================
Edit Template: portal_home
=====================
====================
Add To End Of Template:
====================

$portbar

=======================================================================================================================
=======
Step 10:
=======
==========================
Go To Admin Panel -> Templates
==========================
============================
Edit Template: padmin_admin_settings
============================
==========
Find Code:
==========

<tr class="tablerow">
<td bgcolor="$THEME[altbg1]" width="50%">$lang[portaltitle]</td>
<td bgcolor="$THEME[altbg2]"><input type="text" name="portaltitlenew" value="$portaltitle" size="25" /></td>
</tr>

==========
Add Below:
==========

<tr class="tablerow">
<td bgcolor="$THEME[altbg1]" width="50%">$lang[portalbarstatus]</td>
<td bgcolor="$THEME[altbg2]">
<select size="1" name="portal_portalbar">
<option value="on" $portalbarstatus_on>$lang[texton]</option>
<option value="off" $portalbarstatus_off>$lang[textoff]</option>
</select></td>
</tr>

=======================================================================================================================
Enjoy!